// pages/index/index.js
import { IndexModel } from "../../models/IndexModel.js"
let indexModel = new IndexModel()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    indicatorDots: true, //是否显示面板指示点
    autoplay: true, //自动轮播
    interval: 3000, // 自动切换时间间隔
    duration: 1000, // 滑动动画时长
    circular: true,//是否采用衔接滑动 
    themes: [
      // { theme_icon: 'images/theme@1.png', theme_name: '新品糖果', theme_type: 1 },
      // { theme_icon: 'images/theme@2.png', theme_name: '精品果干', theme_type: 2 },
      // { theme_icon: 'images/theme@3.png', theme_name: '美味坚果', theme_type: 3 },
      // { theme_icon: 'images/theme@4.png', theme_name: '优质推荐', theme_type: 4 },
    ],
    banners: [],
    is_manager:"",
    products: [],
    active:6,
    hasData:1,
    openId:"",
    canIUse:wx.canIUse('button.open-type.getUserInfo'),
    articles:[
      // {id:1,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'在项目目录中，以下文件会经过编译，因此上传之后无法直接访问到：.js、app.json、.wxml、*.wxss（其中 wxml 和 wxss 文件仅针对在 app.json 中配置了的页面）。除此之外，只有后缀名在白名单内的文件可以被上传，不在白名单列表内文件在开发工具能被访问到，但无法被上传。具体白名单列表如下'},
      // {id:2,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'开发者可以使用云开发开发微信小程序、小游戏，无需搭建服务器，即可使用云端能力'},
      // {id:3,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'云开发为开发者提供完整的原生云端支持和微信服务支持，弱化后端和运维概念，无需搭建服务器，使用平台提供的 API 进行核心业务开发，即可实现快速'}
    ]

  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this._init()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    this._init();
    wx.stopPullDownRefresh();
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    return {
      title: ' ',
      path: '/pages/index/index',
      imageUrl:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/other/share.jpg'
    }
  },
  /**
   * 管理页面
   * @param event
   */
  goToManager:function(event){

  },
  bindGetUserInfo:function(){
    var that = this
    //获取用户授权  可以通过 wx.getSetting 先查询一下用户是否授权了 "scope.userInfo" 这个 scope
    wx.getSetting({
      success(res) {
        let flag = res.authSetting['scope.userInfo'];
        if (typeof(flag) == "undefined" || !flag) {
          wx.authorize({
            scope: 'scope.userInfo',
            success (ret) {
              // 用户已经同意小程序使用录音功能，后续调用 wx.userInfo 接口不会弹窗询问
              wx.getUserInfo({
                success: function(res) {
                  let cloudID = res.cloudID
                  let userInfo = res.userInfo
                  indexModel.getUserInfoMore({
                    userInfo:wx.cloud.CloudID(cloudID)},res=>{
                    that.data.openId = res.result.data.userInfo.openId
                    indexModel.getUser({openId:that.data.openId},res=>{
                      let data = res.result.data.data
                      if (data.length > 0){
                      }else{
                        indexModel.addUser({openId:res.result.data.userInfo.openId,
                          nickName : userInfo.nickName,
                          avatarUrl : userInfo.avatarUrl,
                          gender : userInfo.gender, //性别 0：未知、1：男、2：女
                          province : userInfo.province,
                          city : userInfo.city,
                          country : userInfo.country
                        },res=>{
                          console.log(res,"新获取")
                        })
                      }
                    })

                  })
                }
              })
            }
          })
        }else{
          wx.getUserInfo({
            success: function(res) {
              let cloudID = res.cloudID
              let userInfo = res.userInfo
              indexModel.getUserInfoMore({
                userInfo:wx.cloud.CloudID(cloudID)},res=>{
                that.data.openId = res.result.data.userInfo.openId
                indexModel.getUser({openId:that.data.openId},res=>{
                  let data = res.result.data.data
                  if (data.length > 0){
                  }else{
                    indexModel.addUser({openId:res.result.data.userInfo.openId,
                      nickName : userInfo.nickName,
                      avatarUrl : userInfo.avatarUrl,
                      gender : userInfo.gender, //性别 0：未知、1：男、2：女
                      province : userInfo.province,
                      city : userInfo.city,
                      country : userInfo.country
                    },res=>{
                      console.log(res,"新获取")
                    })
                  }
                })

              })
            }
          })
        }
      }
    })
  },
  themeNavigation: function (event) {
    let theme_type = indexModel.getDataSet(event, "themetype");
    // wx.removeStorage({
    //   key: 'abstract_data_' + theme_type,
    //   success (res) {
    //     console.log(theme_type)
    //   }
    // })
    let that = this;
    wx.getStorage({
      key: 'abstract_data_' + theme_type,
      success (res) {
        that.setData({
          articles:res.data,
          active:theme_type,
          hasData:1
        })
      },
      fail (ress){
        indexModel.getAbstract({type:theme_type,status:1},res=>{
          let data = res.result.data.data
          if (data.length > 0){
            wx.setStorage({key:'abstract_data_' + theme_type,data:data})
            that.setData({
              articles:data,
              active:theme_type,
              hasData:1
            })
          }else{
            that.setData({
              articles:data,
              hasData:0,
              active:theme_type
            })
          }
        })
      }
    })
    // if (theme_type == 5){
    //    data = [
    //     {id:1,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'小程序提供了一个简单、高效的应用开发框架和丰富的组件及API，帮助开发者在微信中开发具有原生 APP 体验的服务。\n' +
    //           '\n' +
    //           '本章分主题的介绍了小程序的开发语言、框架、能力、调试等内容，帮助开发者快速全面的了解小程序开发的方方面面。\n' +
    //           '\n' +
    //           '想要更具体了解关于框架、组件、API的详细内容，请参考对应的参考文档'},
    //     {id:2,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'在云端运行的代码，微信私有协议天然鉴权，开发者只需编写自身业务逻辑代码'},
    //     {id:3,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'一个既可在小程序前端操作，也能在云函数中读写的 JSON 数据库'},
    //     {id:4,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'在小程序前端直接上传/下载云端文件，在云开发控制台可视化管理'},
    //     {id:5,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'开发者在使用云开发过程中如有问题或建议，可前往微信开放社区 #云开发 专区发帖交流。 费用与故障相关问题可随时在云开发控制台中提交 工单 反馈'},
    //     {id:6,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'云开发能力从基础库 2.2.3 开始支持，现在 2.2.3 或以上的基础库已覆盖绝大部分用户（目前约 99.6% ），不应继续使用旧的兼容性处理方式。'},
    //     {id:7,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'云开发能力从基础库 2.2.3 开始支持，现在 2.2.3 或以上的基础库已覆盖绝大部分用户（目前约 99.6% ），不应继续使用旧的兼容性处理方式。如采用了旧的兼容性处理方式，请去除 app.json / game.json 中的字段 "cloud": true。'}
    //   ]
    // }else{
    //    data = [
    //      {id:1,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'在项目目录中，以下文件会经过编译，因此上传之后无法直接访问到：.js、app.json、.wxml、*.wxss（其中 wxml 和 wxss 文件仅针对在 app.json 中配置了的页面）。除此之外，只有后缀名在白名单内的文件可以被上传，不在白名单列表内文件在开发工具能被访问到，但无法被上传。具体白名单列表如下'},
    //      {id:2,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'开发者可以使用云开发开发微信小程序、小游戏，无需搭建服务器，即可使用云端能力'},
    //      {id:3,src:'cloud://chenghan-4gtfnyajb5ba9b70.6368-chenghan-4gtfnyajb5ba9b70-1304607615/banner/banner@3.png',text:'云开发为开发者提供完整的原生云端支持和微信服务支持，弱化后端和运维概念，无需搭建服务器，使用平台提供的 API 进行核心业务开发，即可实现快速'}
    //    ]
    // }
    // wx.navigateTo({
    //   url: '../theme/theme?theme_type=' + theme_type,
    // })
  },
  _init: function () {
    wx.clearStorage();//先清除缓存
    this.setData({
      articles:'',
    })
    // 获取用户信息
    indexModel.getUserInfo(res=> {
      let openid = res.result.data.openId
      let opeinds = ["oecm75f5_qejaJKqm8F590lVFox8"]
      let index = opeinds.indexOf(openid);
      if (index > -1){
        this.setData({
          is_manager:1,
        })
      }
    })
    //初始先获取一部分数据
    indexModel.getAbstract({type:6,status:1},res=>{
      this.setData({
        articles:res.result.data.data,
        active:6,
        hasData:1
      })
    })
    // 主题
    indexModel.getTheme(res => {
      console.log(res.result.data.data,"主题")
      this.setData({
        themes: res.result.data.data.slice(0,2)
      })
    })
    //轮播图
    // indexModel.getBanner(res => {
    //   console.log(res, '轮播图')
    //   this.setData({
    //     banners: res.result.data.data
    //   })
    // })
    // // 最新商品
    // indexModel.getProductNew(res => {
    //   this.setData({
    //     products: res.result.data.data
    //   })
    // })
  },
  // 跳转商品详情
  productDetails: function (event) {
    this._navProductDetail(event.detail.productId)
  },
  productBanner: function (event) {
    let product_id = indexModel.getDataSet(event, "productid")
    this._navProductDetail(product_id)
  },
  // 跳转详情
  _navProductDetail: function (product_id) {
    wx.navigateTo({
      url: '/pages/product/product?product_id=' + product_id,
    })
  },

  /*@qiuf 2021-1-4 17:44:03*/
  navigator:function (event) {
    let id = indexModel.getDataSet(event,'id');
    console.log(id);
    // wx.navigateTo({
    //   url: '../theme/theme?theme_type='+ id,
    // })
    wx.navigateTo({
      url: '/pages/article/article?url=' +  encodeURI(id),
    })
  }
})